Extensible markup language (XML) has become an increasingly popular language in which to create and store data. XML provides users with a great deal of flexibility because, as the designation “extensible” connotes, a user can define the user's own tags for applying attributes to data elements within an XML file or data stream. However, because XML is a descriptive markup language, not a presentational markup language, working with XML files to achieve a desired format can be difficult. Generally, to view XML data as it formatted, the XML is converted to a hypertext markup language (HTML) by applying an extensible stylesheet language (XSL) stylesheet transform. In other words, to create or edit XML data, and then to see the XML data as it is formatted, is a two-step approach.
To make working with XML files more convenient, it is desirable to use a what-you-see-is-what-you-get (WYSIWYG) editor. Some WYSIWYG editors are available as locally-executing client applications. In presenting the XML data as it will appear and in an editable format, these conventional editors employ a different XSL stylesheet for editing than will be used in production to transform the XML data to HTML. As a result, when the XML is used in production, such as to present a web page, there may be discrepancies between how the formatted XML data appeared in the editor and how it later appears online.
In addition, even though the client editor may generally show how the XML will appear when formatted, the XML still may inconvenient to use. Conventional editors may not support complex XSL transformations and users may only be able to format text on the paragraph level. In addition, when a user wishes to insert an XML element to create an object such as a table or a list, because XML generates such objects one element at a time, conventional client editors still may force the users to add each list element or each table cell one-at-a-time to correspond with the underlying XML. Consequently, even though the client XML editor may present the XML data in a mostly-WYSIWYG format, the user may have to have—or be forced to learn—some aspects of XML coding to proficiently create or edit XML files.